package com.ynet.middleground.riskmanage.bean;

import javax.validation.constraints.NotEmpty;

import com.ynet.core.common.BaseReqObj;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * @author liulx
 * @description 换货指令结果同步请求信息
 * @date 2020-08-19 19:37
 */
@Data
@EqualsAndHashCode(callSuper = false)
@ApiModel(value = "换货指令结果同步请求信息", description = "换货指令结果同步请求信息")
public class SyncExchangeReq extends BaseReqObj {

    private static final long serialVersionUID = 8635057777686727598L;

    @ApiModelProperty(value = "系统标识 0：冷链、1：大港", notes = "系统标识 0：冷链、1：大港", required = true)
    @NotEmpty(message = "系统标志不能为空")
    private String chanType;

    @ApiModelProperty(value = "新质押唯一标识（中台系统返回的主键）", notes = "新质押唯一标识（中台系统返回的主键）", required = true)
    @NotEmpty(message = "新质押唯一标识不能为空")
    private String trendId;

    @ApiModelProperty(value = "换货指令固定值：HH", notes = "换货指令固定值：HH", required = true)
    @NotEmpty(message = "监管指令不能为空")
    private String order;

    @ApiModelProperty(value = "原质押唯一标识（中台系统返回的主键）", notes = "原质押唯一标识（中台系统返回的主键）", required = true)
    @NotEmpty(message = "原质押唯一标识不能为空")
    private String sourceTrendId;

    @ApiModelProperty(value = "结果\n1 质押监管成功; 2 质押监管失败; 3 解除质押监管成功; 4 解除质押监管失败；5 换货成功；6 换货失败",
        notes = "结果<br>结果\n1 质押监管成功; 2 质押监管失败; 3 解除质押监管成功; 4 解除质押监管失败；5 换货成功；6 换货失败", required = true)
    @NotEmpty(message = "结果不能为空")
    private String result;

    @ApiModelProperty(value = "原因", notes = "原因")
    private String reason;

}
